/**
 * Copyright: Copyright (c)2011
 * Company: 易宝支付(YeePay)
 */
package net.loyintean.pearlshell.base.service;

import java.io.IOException;

import org.apache.commons.httpclient.methods.EntityEnclosingMethod;

/** 解析http请求所需的参数和结果的服务
 * <p>
 * 其中，T是发送参数，E是返回参数<br>
 * TODO 提供一个默认的，基于反射和注解的实现类
 * 
 * @author：jun.lin@yeepay.com
 * @since：2015年3月13日 下午7:53:10
 * @version: */
public interface HttpParseService<T, E> {

	/** @param param
	 * @return
	 * @throws IOException
	 *             如果param是String类型，而编码格式不匹配时，可能抛出此异常 */
	void generateRequestEntity(T param, EntityEnclosingMethod method)
			throws IOException;

	E parseResult(T param, String restultString);
}
